package com.hsnn.medstgmini.complain.model;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.springframework.format.annotation.DateTimeFormat;

/**
 * @category 申投诉 实体类
 * @author 韩守松
 * @date 2015年9月8日
 */
@Entity
@Table(name="sys_complain")
public class SysComplain implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String name;//申投诉人真实姓名
	private String sex;//申投诉人性别	
	private String orgId;//申投诉人所在机构ID	
	private Integer orgType;//申投诉人所在机构类型0医疗机构1生产企业2配送企业	
	private String phoneNum;//	联系电话	
	private String email;//电子邮箱	
	private String idNum;//身份证号	
	private String address;//通讯地址	
	private String zipcode;//邮编	
	
		private String complainId;//申投诉ID	
		private String complainTitle;//申投诉标题	
		private String complainContent;//申投诉正文	
		private String complainHospital;//申投诉 医疗机构	
		private String complainProdcomp;//申投诉 生产企业	
		private String complainDelcomp;//申投诉 配送企业
		private Date complainDatetime;//申诉时间
		private String complainDatetimeStr;
		private String complainRemark;//申投诉备注	
		private Integer complainType;//申投诉类型1.申诉2投诉	
		private Integer complainStatus;//申投诉状态0新建1提交2已处理
		private String processRemark;//处理备注	
		private String processUsername;//处理人	
		private Date processDatetime;//处理时间
		private String processDatetimeStr;
		private String processFeedback;//反馈备注
		private String feedbackUsername;//反馈人	
		private Date feedbackDatetime;//反馈时间	
		private String feedbackDatetimeStr;
		private String updUser;//更新人	
		private Date updDatetime;//更新时间
		private String updDatetimeStr;
		
		private String projId;//项目id
		private String[] hospId;//医疗机构id
		private String[] compId;//生产企业id
		private String[] delcompId;//配送企业id
		private String[] drugId;//产品id
		private String[] attrName;//附件名称
		
		private Integer userType;//用户状态
		
		private String url;//相关证明路径
		@Id
		@Column(name="complain_id",length=36)
		public String getComplainId() {
			return complainId;
		}
		public void setComplainId(String complainId) {
			this.complainId = complainId;
		}
		
		@Column(name="complain_title",length=128)
		public String getComplainTitle() {
			return complainTitle;
		}
		public void setComplainTitle(String complainTitle) {
			this.complainTitle = complainTitle;
		}
		
		@Column(name="complain_content",length=4000)
		public String getComplainContent() {
			return complainContent;
		}
		public void setComplainContent(String complainContent) {
			this.complainContent = complainContent;
		}
		
		@Column(name="complain_hospital",length=36)
		public String getComplainHospital() {
			return complainHospital;
		}
		public void setComplainHospital(String complainHospital) {
			this.complainHospital = complainHospital;
		}
		
		@Column(name="complain_prodcomp",length=36)
		public String getComplainProdcomp() {
			return complainProdcomp;
		}
		public void setComplainProdcomp(String complainProdcomp) {
			this.complainProdcomp = complainProdcomp;
		}
		
		@Column(name="complain_delcomp",length=36)
		public String getComplainDelcomp() {
			return complainDelcomp;
		}
		public void setComplainDelcomp(String complainDelcomp) {
			this.complainDelcomp = complainDelcomp;
		}
		
		@Column(name="complain_datetime")
		@DateTimeFormat(pattern = "yyyy-MM-dd")
		public Date getComplainDatetime() {
			return complainDatetime;
		}
		
		public void setComplainDatetime(Date complainDatetime) {
			this.complainDatetime = complainDatetime;
		}
		
		@Transient
		public String getComplainDatetimeStr() {
			return complainDatetimeStr;
		}
		public void setComplainDatetimeStr(String complainDatetimeStr) {
			this.complainDatetimeStr = complainDatetimeStr;
		}
		
		@Column(name="complain_remark",length=4000)
		public String getComplainRemark() {
			return complainRemark;
		}
		public void setComplainRemark(String complainRemark) {
			this.complainRemark = complainRemark;
		}
		
		@Column(name="complain_type",length=4)
		public Integer getComplainType() {
			return complainType;
		}
		public void setComplainType(Integer complainType) {
			this.complainType = complainType;
		}
		
		@Column(name="complain_status",length=4)
		public Integer getComplainStatus() {
			return complainStatus;
		}
		public void setComplainStatus(Integer complainStatus) {
			this.complainStatus = complainStatus;
		}
		
		@Column(name="process_remark",length=4000)
		public String getProcessRemark() {
			return processRemark;
		}
		public void setProcessRemark(String processRemark) {
			this.processRemark = processRemark;
		}
		
		@Column(name="process_username",length=128)
		public String getProcessUsername() {
			return processUsername;
		}
		public void setProcessUsername(String processUsername) {
			this.processUsername = processUsername;
		}
		
		@Column(name="process_datetime")
		public Date getProcessDatetime() {
			return processDatetime;
		}
		public void setProcessDatetime(Date processDatetime) {
			this.processDatetime = processDatetime;
		}
		
		@Transient
		public String getProcessDatetimeStr() {
			return processDatetimeStr;
		}
		public void setProcessDatetimeStr(String processDatetimeStr) {
			this.processDatetimeStr = processDatetimeStr;
		}
		
		@Column(name="process_feedback",length=4000)
		public String getProcessFeedback() {
			return processFeedback;
		}
		public void setProcessFeedback(String processFeedback) {
			this.processFeedback = processFeedback;
		}
		
		@Column(name="feedback_username",length=128)
		public String getFeedbackUsername() {
			return feedbackUsername;
		}
		public void setFeedbackUsername(String feedbackUsername) {
			this.feedbackUsername = feedbackUsername;
		}
		
		@Column(name="feedback_datetime")
		public Date getFeedbackDatetime() {
			return feedbackDatetime;
		}
		public void setFeedbackDatetime(Date feedbackDatetime) {
			this.feedbackDatetime = feedbackDatetime;
		}
		
		@Transient
		public String getFeedbackDatetimeStr() {
			return feedbackDatetimeStr;
		}
		public void setFeedbackDatetimeStr(String feedbackDatetimeStr) {
			this.feedbackDatetimeStr = feedbackDatetimeStr;
		}
		
		@Column(name="upd_user",length=36)
		public String getUpdUser() {
			return updUser;
		}
		public void setUpdUser(String updUser) {
			this.updUser = updUser;
		}
		
		@Column(name="upd_datetime")
		public Date getUpdDatetime() {
			return updDatetime;
		}
		public void setUpdDatetime(Date updDatetime) {
			this.updDatetime = updDatetime;
		}
		
		@Transient
		public String getUpdDatetimeStr() {
			return updDatetimeStr;
		}
		public void setUpdDatetimeStr(String updDatetimeStr) {
			this.updDatetimeStr = updDatetimeStr;
		}
		
		@Transient
		public String getProjId() {
			return projId;
		}
		public void setProjId(String projId) {
			this.projId = projId;
		}
		
		@Transient
		public String[] getHospId() {
			return hospId;
		}
		public void setHospId(String[] hospId) {
			this.hospId = hospId;
		}
		
		@Transient
		public String[] getDelcompId() {
			return delcompId;
		}
		public void setDelcompId(String[] delcompId) {
			this.delcompId = delcompId;
		}
		@Transient
		public String[] getCompId() {
			return compId;
		}
		public void setCompId(String[] compId) {
			this.compId = compId;
		}
		@Transient
		public String[] getDrugId() {
			return drugId;
		}
		public void setDrugId(String[] drugId) {
			this.drugId = drugId;
		}
		@Transient
		public Integer getUserType() {
			return userType;
		}
		public void setUserType(Integer userType) {
			this.userType = userType;
		}
		
		@Column(name="name",length=100)
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		
		@Column(name="sex",length=5)
		public String getSex() {
			return sex;
		}
		public void setSex(String sex) {
			this.sex = sex;
		}
		
		@Column(name="org_id",length=36)
		public String getOrgId() {
			return orgId;
		}
		public void setOrgId(String orgId) {
			this.orgId = orgId;
		}
		
		@Column(name="org_type",length=4)
		public Integer getOrgType() {
			return orgType;
		}
		public void setOrgType(Integer orgType) {
			this.orgType = orgType;
		}
		
		@Column(name="phone_num",length=20)
		public String getPhoneNum() {
			return phoneNum;
		}
		public void setPhoneNum(String phoneNum) {
			this.phoneNum = phoneNum;
		}
		
		@Column(name="email",length=64)
		public String getEmail() {
			return email;
		}
		public void setEmail(String email) {
			this.email = email;
		}
		
		@Column(name="id_num",length=20)
		public String getIdNum() {
			return idNum;
		}
		public void setIdNum(String idNum) {
			this.idNum = idNum;
		}
		
		@Column(name="address",length=512)
		public String getAddress() {
			return address;
		}
		public void setAddress(String address) {
			this.address = address;
		}
		
		@Column(name="zipcode",length=10)
		public String getZipcode() {
			return zipcode;
		}
		public void setZipcode(String zipcode) {
			this.zipcode = zipcode;
		}
		@Transient
		public String getUrl() {
			return url;
		}
		public void setUrl(String url) {
			this.url = url;
		}
		@Transient
		public String[] getAttrName() {
			return attrName;
		}
		public void setAttrName(String[] attrName) {
			this.attrName = attrName;
		}
		
}
